


(async ()=>{
/**
 * 模型是sequelize的本质，代表数据库中表的抽象，在sequelize中，它是一个Model的拓展类
 */
const sequelize = require('./入门')
const {DataTypes} = require('sequelize');
const user = sequelize.define('user',{
  // 定义模型属性
  id:{
    type:DataTypes.INTEGER,
    allowNull:false,
    primaryKey:true,
    autoIncrement:true
  },
  firstName:{
    type:DataTypes.STRING,
    allowNull:false,
  },
  lastName:{
    type:DataTypes.STRING,
    allowNull:false
  },
},{
  underscored:true, // 是否支持驼峰
  tableName:'user', // 表名
  timestamps:false, // 是否启动自动向模型添加createdAt/updatedAt
})

  // 插入数据
  // const xz = await user.create({
  //   firstName:'晓',
  //   lastName:'春',
  // })

  //  更新条目
  // xz.firstName = 'x';
  // await xz.save() 

  // 查询

  const usersList = await user.findAll() //查询所有用户 
  console.log(usersList.every(userItem => userItem instanceof user))
  console.log('all users',JSON.stringify(usersList,null,2))  // 使用两个空格缩进

})()

